Bubble Sort Algoritması Görselleştirme

Süre: - | Karşılaştırma: 0 | Yer Değiştirme: 0

Bubble Sort Nedir?

Bubble Sort (Kabarcık Sıralama), en basit sıralama algoritmalarından biridir. Adını, sıralama sırasında büyük değerlerin dizinin sonuna doğru "kabarcık gibi yükselmesi" prensibinden alır.

Nasıl Çalışır?

Algoritma, yan yana olan elemanları karşılaştırarak ve gerekirse yer değiştirerek çalışır:

  1. Dizinin başından başlayarak, her elemanı bir sonraki eleman ile karşılaştırır.
  2. Eğer mevcut eleman sonraki elemandan büyükse, yerlerini değiştirir.
  3. Bu işlemi dizinin sonuna kadar devam ettirir.
  4. Her geçişin sonunda, en büyük eleman dizinin sonuna yerleşmiş olur.
  5. Bu işlemi tüm dizi sıralanana kadar tekrarlar.
// Bubble Sort Algoritması - JavaScript function bubbleSort(array) { const n = array.length; for (let i = 0; i < n - 1; i++) { // Her geçişte, dizinin (n-i-1) elemanını kontrol ediyoruz for (let j = 0; j < n - i - 1; j++) { // Eğer mevcut eleman sonraki elemandan büyükse if (array[j] > array[j + 1]) { // Elemanların yerlerini değiştir [array[j], array[j + 1]] = [array[j + 1], array[j]]; } } } return array; }

Kararlılık (Stability)

Bubble Sort, kararlı (stable) bir sıralama algoritmasıdır. Bu, aynı değere sahip elemanların sıralamadan önce ve sonra aynı göreceli sırada kaldığı anlamına gelir.

Örneğin, [5, 1, 4, 5*, 2] (5* ile işaretli eleman farklı bir öğe olarak düşünün) dizisini sıraladığınızda, iki adet 5 değeri orijinal sırada kalır, yani [1, 2, 4, 5, 5*] şeklinde olur, 5* değeri ikinci 5 olarak kalır.

Zaman ve Uzay Karmaşıklığı

Zaman Karmaşıklığı:

Uzay Karmaşıklığı: O(1) - Sabit ek alan kullanır

Avantajları ve Dezavantajları

Avantajları:

Dezavantajları:

Kullanım Alanları

Bubble Sort, aşağıdaki durumlarda tercih edilebilir: